Differential space-time block coding

ABSTRACT

A differential space-time block coder produces successive space-time blocks of symbols from M-PSK symbols to be encoded, in accordance with an orthogonal matrix and a normalization factor. Differentially encoded space-time output blocks, for transmission via a plurality of transmit antennas ( 16, 18 ) of a wireless communications system, are produced by multiplying ( 42 ) each space-time block from the space-time block coder ( 40 ) by the respective previous ( 44 ) differentially encoded space-time output block. Decoding is independent of channel estimation, and the arrangement is simple, avoids error propagation, and is applicable to different numbers of transmit antennas.

This invention relates to differential space-time block coding, for example for a wireless communications system.

BACKGROUND OF THE INVENTION

As is well known, wireless communications channels are subject to time-varying multipath fading, and it is relatively difficult to increase the quality, or decrease the effective error rate, of a multipath fading channel. While various techniques are known for mitigating the effects of multipath fading, several of these (e.g. increasing transmitter power or bandwidth) tend to be inconsistent with other requirements of a wireless communications system. One technique which has been found to be advantageous is antenna diversity, using two or more antennas (or signal polarizations) at a transmitter and/or at a receiver of the system.

In a cellular wireless communications system, each base station typically serves many remote (fixed or mobile) units and its characteristics (e.g. size and location) are more conducive to antenna diversity, so that it is desirable to implement antenna diversity at least at a base station, with or without antenna diversity at remote units. At least for communications from the base station in this case, this results in transmit diversity, i.e. a signal is transmitted from two or more transmit antennas.

S. M. Alamouti, “A Simple Transmit Diversity Technique for Wireless Communications”, IEEE Journal on Selected Areas in Communications, Vol. 16, No. 8, pages 1451-1458, October 1998 describes a simple transmit diversity scheme using space-time coding (STBC). For the case of two transmit antennas, complex symbols s0 and −s1* are successively transmitted from one antenna and simultaneously complex symbols s1 and s0* are successively transmitted from the other antenna, where * represents the complex conjugate. These transmitted symbols constitute what is referred to as a space-time block.

A disadvantage of the STBC technique as described by Alamouti is that it requires estimation of the communications channel. While this can be done for example using pilot signal insertion and extraction, this is not desirable, for example because the pilot signal requires a significant proportion of the total transmitted power of the system.

V. Tarokh et al., “New Detection Schemes for Transmit Diversity with no Channel Estimation”, IEEE International Conference on Universal Personal Communications, 1998, describes detection schemes for the STBC technique of Alamouti, in which effectively the channel is estimated from initially known transmitted symbols and from subsequent detected data symbols. However, this technique undesirably results in error propagation. This publication also notes that the technique of Alamouti has been generalized for more than two transmit antennas.

V. Tarokh et al., “A Differential Detection Scheme for Transmit Diversity”, IEEE Journal on Selected Areas in Communications, Vol. 18, No. 7, pages 1169-1174, July 2000 describes a differential detection scheme for an STBC technique using two transmit antennas and one or more receive antennas, which does not require a channel estimate or pilot symbol transmission. As described on page 1171 and shown in FIG. 1 of this publication, for a 2^(b)-PSK (phase shift keying), b=1, 2, 3, . . . constellation the transmitter includes a bijective mapping M of blocks of 2b bits, from which a differential encoding produces symbols for transmission. The receiver includes an inverse mapping M⁻¹. While this scheme avoids the problem of error propagation, it is relatively complicated and hence more complex to implement, and its application is limited to only two transmit antennas. In this respect the publication states on page 1174: “It is a nontrivial task to extend the differential detection transmit diversity method described in this paper to n>2 transmit antennas.”.

A need exists, therefore, to provide an improved method and coder for differential space-time block coding, and a corresponding method and decoder for decoding.

SUMMARY OF THE INVENTION

According to one aspect, this invention provides a method of differential space-time block coding comprising the steps of: producing, from symbols to be encoded, successive space-time blocks H_(x)(X_(i)) each of T symbols in successive symbol intervals on each of T paths in accordance with a T by T orthogonal matrix H_(x), where T is an integer greater than one, X_(i) represents the symbols to be encoded in a space-time block, and i is an integer identifying each space-time block; producing differentially encoded space-time output blocks H_(z,i) each of T symbols in successive symbol intervals on each of T output paths; and delaying the differentially encoded space-time output blocks H_(z,i) to produce respective delayed blocks H_(z,i−1); each differentially encoded space-time output block H_(z,i) being produced by matrix multiplication of the block H_(x)(X_(i)) by the delayed block H_(z,i−1).

For example, in one embodiment of the invention described below T=2 and two symbols are encoded in each space-time block. In another embodiment of the invention described below T=4 and three symbols are encoded in each space-time block. Preferably in each case the step of producing the successive space-time blocks H_(x)(X_(i)) comprises a multiplication of the symbols to be encoded by a normalization factor. Conveniently the symbols to be encoded comprise M-ary phase shift keying symbols, where M is an integer greater than one.

Another aspect of the invention provides a differential space-time block coder comprising: a space-time block coder responsive to symbols to be encoded to produce successive space-time coded blocks; a matrix multiplier having a first input for said successive space-time coded blocks, a second input, and an output providing differentially encoded space-time blocks; and a delay unit for supplying each differentially encoded space-time block from the output of the matrix multiplier to the second input of the matrix multiplier with a delay of one space-time block; the matrix multiplier multiplying each space-time coded block by an immediately preceding differentially encoded space-time block to produce a current differentially encoded space-time block.

The invention also provides a method of decoding symbols received in respective symbol intervals in response to transmission from T antennas of differentially encoded space-time blocks produced by the method recited above, comprising the steps of: providing T received symbols of each encoded space-time block; and producing decoded symbols {circumflex over (X)}_(i) in accordance with: Y_(i)=kH_(x)({circumflex over (X)}_(i))Y_(i−1) where Y_(i) is a vector of T symbols of a current encoded space-time block i, Y_(i−1) is a vector of T symbols of an immediately preceding encoded space-time block i−1, i is an integer, k is a scaling constant, and H_(x) is the T by T orthogonal space-time block coding matrix.

The invention further provides a decoder for decoding symbols received in respective symbol intervals in response to transmission of differentially encoded space-time blocks produced by the coder recited above, comprising: means for providing received symbols of each encoded space-time block i represented by a vector Y_(i); a delay unit for providing a delay of one space-time block to provide received symbols of an immediately preceding encoded space-time block i−1 represented by a vector Y_(i−1); and means for producing decoded symbols {circumflex over (X)}_(i) in accordance with an equation: Y_(i)=kH_(x)({circumflex over (X)}_(i))Y_(i−1) where k is a scaling constant and H_(x) is an orthogonal matrix representing space-time block coding by the coder.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be further understood from the following description with reference to the accompanying drawings, in which by way of example:

FIG. 1 illustrates parts of a known space-time block code (STBC) transmitter;

FIG. 2 illustrates parts of a corresponding known receiver;

FIG. 3 illustrates parts of a known STBC transmitter using mapping and differential encoding;

FIG. 4 illustrates parts of an STBC transmitter using differential encoding in accordance with an embodiment of the invention; and

FIG. 5 illustrates parts of a corresponding receiver in accordance with an embodiment of the invention.

DETAILED DESCRIPTION

Referring to the drawings, FIG. 1 illustrates parts of a known space-time block code (STBC) transmitter, and FIG. 2 illustrates parts of a corresponding known receiver. For simplicity and clarity, these and the other figures of the drawings show only those parts of the transmitter and receiver necessary for a full understanding of the prior art and embodiments of this invention, and the same references are used in different figures to denote similar elements.

The transmitter of FIG. 1 includes a serial-to-parallel (S—P) converter 10, an M-PSK (M-ary phase shift keying) modulator or mapping function 12, and a space-time block coder (STBC) 14 providing outputs, via transmitter functions such as up-converters and power amplifiers not shown but represented in FIG. 1 by dashed lines, to at least two antennas 16 and 18 which provide transmit diversity. The S—P converter 10 is supplied with input bits of information to be communicated and produces output bits on two or more parallel lines to the M-PSK mapping function 12, which produces from the parallel bits sequential M-PSK symbols x₁, x₂, . . . .

For example, the mapping function 12 may provide a Gray code mapping of in each case 3 input bits from the S—P converter 10 to respective ones of M=8 signal points of an 8-PSK signal point constellation. Generally, it can be appreciated that the mapping function 12 can provide any desired mapping of one or more input bits to a signal point constellation with any appropriate and desired number M of equal-energy phase states; for example M=2 (for which the S—P converter 10 is not required), 4, or 8.

The symbols x₁, x₂, . . . , represented by complex numbers, are supplied to the STBC 14, which for simplicity is shown in FIG. 1 as having two outputs for the respective transmit antennas 16 and 18, but may instead have more than two outputs for a corresponding larger number of transmit antennas. For the case of two antennas as shown, the STBC 14 forms a space-time block of symbols, as represented in FIG. 1, from each successive pair of symbols x₁ and x₂ supplied to its input.

More particularly, the STBC function is represented by a T-by-T orthogonal matrix H_(x), where T is the number of transmit antennas and hence symbol outputs of the STBC 14. For the case of T=2 as represented in FIG. 1, ${H_{x}\left( {x_{1},x_{2}} \right)} = \begin{bmatrix} x_{1} & x_{2} \\ {- x_{2}^{*}} & x_{1}^{*} \end{bmatrix}$ In accordance with this matrix H_(x), for each pair of PSK symbols x₁ and x₂ supplied to the input of the STBC 14, in a first symbol interval the antenna 16 is supplied with the symbol x₁ and the second antenna 18 is supplied with the symbol x₂, and in a second symbol interval the first antenna 16 is supplied with the symbol −x₂* and the second antenna 18 is supplied with the symbol x₁*, where * denotes the complex conjugate. Thus both PSK symbols in each pair are transmitted twice in different forms, from different antennas and at different times to provide both space and time diversity. It can be seen that each column of the matrix H, indicates the symbols transmitted in successive intervals from a respective antenna, and each row represents a respective symbol transmission interval.

Identifying each pair of symbols x₁ and x₂ with an additional integer i representing a symbol pair number (or, equivalently, time), i.e. as a respective pair of symbols x_(1,i) and x_(2,i) or equivalently as X_(i), the matrix H_(x) can be more generally expressed as: ${H_{x}\left( X_{i} \right)} = {{H_{x}\left( {x_{1,i},x_{2,i}} \right)} = {\begin{bmatrix} x_{1,i} & x_{2,i} \\ {- x_{2,i}^{*}} & x_{1,i}^{*} \end{bmatrix}.}}$

The space-time blocks transmitted from the antennas 16 and 18 are received by an antenna 20 of the receiver shown in FIG. 2, producing received symbols y₁, y₂, . . . , again represented by complex numbers, on a receive path 22. Pairs of these received symbols, y_(1,i) and y_(2,i), alternatively represented as Y_(i), are supplied to a maximum likelihood decoder 24, shown within a dashed line box in FIG. 2. The decoder 24 comprises an STBC decoder 26 and an M-PSK demodulator 28. The STBC decoder 26 is supplied with the paired symbols Y_(i) and also with channel estimates α₁ and α₂, and produces estimates {circumflex over (x)}₁, {circumflex over (x)}₂; . . . of the transmitted PSK symbols x₁, x₂, . . . respectively (the caret symbol {circumflex over ( )} denoting an estimate). These estimates are supplied to the M-PSK demodulator 28, which produces estimates of the original input bits.

The channel estimates α₁ and α₂ represent channel parameters or gains (amplitude and phase) of the channels from the transmit antennas 16 and 18, respectively, to the receive antenna 20, and are reasonably assumed to be constant over the duration of each space-time block. The channel estimates can be produced in any desired known manner, for example using pilot symbols also communicated from the transmitter to the receiver via the same channels.

If $A_{i} = \begin{bmatrix} \alpha_{1,i} \\ \alpha_{2,i} \end{bmatrix}$ is a vector of the channel estimates for the respective space-time block i then, excluding noise and interference, it can be seen that: $\begin{matrix} {{Y_{i} = {\begin{bmatrix} y_{1,i} \\ y_{2,i} \end{bmatrix} = {{{H_{x}\left( {x_{1,i},x_{2,i}} \right)}A_{i}} = {\begin{bmatrix} x_{1,i} & x_{2,i} \\ {- x_{2,i}^{*}} & x_{1,i}^{*} \end{bmatrix}\begin{bmatrix} \alpha_{1,i} \\ \alpha_{2,i} \end{bmatrix}}}}},{i = 1},2,\ldots} & (1) \end{matrix}$ Introducing a converted vector ${{\overset{\sim}{Y}}_{i} = \begin{bmatrix} y_{1,i} \\ {- y_{2,i}^{*}} \end{bmatrix}},$ it can be determined as shown in the publication by Alamouti that: ${\hat{X}}_{i} = {\begin{bmatrix} {\hat{x}}_{1,i} \\ {\hat{x}}_{2,i} \end{bmatrix} = {{{H_{\alpha}\left( {\alpha_{1,i},\alpha_{2,i}} \right)}^{\prime}{\overset{\sim}{Y}}_{i}} = {\left( {{\alpha_{1,i}}^{2} + {\alpha_{2,i}}^{2}} \right)X_{i}}}}$ where the matrix H_(α)(α_(1,i),α_(2,i))′ is the conjugate transpose of the matrix H_(α)(α_(1,i),α_(2,i))′. As the part (|α_(1,i)|²+|α_(2,i)|²) is real, it does not change the phases of the M-PSK symbols, which accordingly can be decoded to the information bits by a look-up table operation.

As discussed above, the Alamouti publication extends this transmit diversity arrangement also to the case of more than one receive antenna, and this arrangement has also been extended for the case of more than two transmit antennas. Such known arrangements provide advantages of simplicity and diversity, but have the disadvantage of requiring channel estimation.

FIG. 3 illustrates parts of an STBC transmitter as proposed by Tarokh et al. in the publication referred to above entitled “A Differential Detection Scheme for Transmit Diversity”. This scheme avoids the disadvantage of requiring channel estimation as in the arrangement of FIGS. 1 and 2 described above, and is also intended to avoid error propagation which occurs in a scheme such as that proposed by Tarokh et al. in the publication referred to above entitled “New Detection Schemes for Transmit Diversity with no Channel Estimation”.

Referring to FIG. 3, the transmitter comprises a mapping function 30, a differential symbol calculation block 32, a delay 34, and two transmit antennas represented by a block 36. As described by Tarokh et al., for a 2^(b)-PSK, b=1, 2, . . . , signal point constellation the transmitter uses the mapping M of the function 30 on an input block of 2b bits B_(2t+)1 and computes M(B_(2t+1))=(A(B_(2t+1))B(B_(2t+1))) where A and B are explained in part III.A on page 1171 of the publication. The transmitter then uses the delay 34 and the calculation block 32 to compute (s_(2t+1) s_(2t+2))=A(B_(2t+1)) (S_(2t−1) S_(2t))+B(B_(2t+1))(−s_(2t)* s_(2t)−1*), sends s_(2t+1) and s_(2t+2) from the first and second transmit antennas respectively at time 2t+1, and sends −s_(2t+2)* and s_(2t+1)* from the first and second transmit antennas respectively at time 2t+2. This mapping, differential computation, and space-time block code transmission is repeated for subsequent blocks each of 2b bits, with the first two symbols of a transmission sequence providing a differential encoding reference and not conveying any information.

While the transmitter of FIG. 3 avoids the need for channel estimation and avoids the problem of error propagation, it introduces calculations which undesirably complicate the transmitter, and this scheme is limited in its application to the case of only two transmit antennas, as recognized in the publication. Thus this scheme has limited application and an undesirably complex implementation.

FIG. 4 illustrates parts of a two-antenna STBC transmitter using differential encoding in accordance with an embodiment of this invention. Like the transmitter of FIG. 1 described above, this includes an S—P converter 10 to which input bits are supplied, whose output bits are supplied to an M-PSK mapping function 12 which produces sequential M-PSK symbols x₁, x₂, . . . represented by complex numbers. Also as described above with reference to FIG. 1, pairs x_(1,i) and x_(2,i,) or X_(i), of these symbols are supplied to an STBC function 40, which forms the 2 by 2 orthogonal STBC matrix H_(x)(X_(i)) as described above, in this case scaled by a predetermined normalizing factor k as described further below.

The output of the STBC function 40 is supplied to one input of a matrix multiplier 42, an output of which constitutes an STBC matrix H_(z,i) as described below and is supplied to the two transmit antennas 16 and 18 to be transmitted in a similar manner to that described with reference to FIG. 1 for the matrix H_(x)(X_(i)). The matrix H_(z,i) is also supplied to an input of a delay unit 44, an output matrix H_(z,i−1) of which is supplied to another input of the matrix multiplier 42.

Representing the matrix H_(z,i) in a similar manner to that used for the matrix H_(x)(X_(i)), i.e. as comprising a pair of symbols z_(1,i) and z_(2,i), then for a symbol pair i the matrix H_(z,i) is given by: $H_{z,i} = {{H_{z}\left( {z_{1,i},z_{2,i}} \right)} = \begin{bmatrix} z_{1,i} & z_{2,i} \\ {- z_{2,i}^{*}} & z_{1,i}^{*} \end{bmatrix}}$ the components of which are transmitted by the two antennas 16 and 18 as a space-time block.

It can be seen that the functions 40 to 44 of the transmitter of FIG. 4 constitute an STBC encoder having the encoder equation: H _(z,i) =kH _(x)(X _(i))H _(z,i−1). In other words, each space-time block H_(z,i) transmitted by the antennas 16 and 18 is equal to the normalized matrix kH_(x)(X_(i)) produced by the function 40 multiplied in the matrix multiplier 42 by the matrix H_(z,i−1) of the previously transmitted space-time block, the latter being fed back to the multiplier 42 via the delay 44 (which provides a delay corresponding to one space-time block, i.e. two symbols in this case).

In more detail, it can be seen that: $\begin{matrix} {{{{kH}_{x}\left( {x_{1,i},x_{2,i}} \right)}{H_{z}\left( {z_{1,{i - 1}},z_{2,{i - 1}}} \right)}} = {{k\begin{bmatrix} x_{1,i} & x_{2,i} \\ {- x_{2,i}^{*}} & x_{1,i}^{*} \end{bmatrix}}\begin{bmatrix} z_{1,{i - 1}} & z_{2,{i - 1}} \\ {- z_{2,{i - 1}}^{*}} & z_{1,{i - 1}}^{*} \end{bmatrix}}} \\ {= {k\begin{bmatrix} {{x_{1,i}z_{1,{i - 1}}} - {x_{2,i}z_{2,{i - 1}}^{*}}} & {{x_{1,i}z_{3,{i - 1}}} + {x_{2,i}z_{1,{i - 1}}^{*}}} \\ {{{- x_{2,i}^{*}}z_{1,{i - 1}}} - {x_{1,i}^{*}z_{2,{i - 1}}^{*}}} & {{{- x_{2,i}^{*}}z_{2,{i - 1}}} + {x_{1,i}^{*}z_{1,{i - 1}}^{*}}} \end{bmatrix}}} \\ {= {\begin{bmatrix} z_{1,i} & z_{2,i} \\ {- z_{2,i}^{*}} & z_{1,i}^{*} \end{bmatrix} = {H_{z}\left( {z_{1,i},z_{2,i}} \right)}}} \end{matrix}$ where z_(1,i)≡k(x_(1,i)z_(1,i−1)−x_(2,i)z_(2,i−1)) and Z_(2,i)≡k(x_(1,i)z_(2,i−1)+x_(2,i)z_(1,i−1)*). With |x_(1,i)|²=|x_(2,i)|²=1 and k=1{square root}{square root over (2)}, the matrix H_(z,i) has the same properties as the matrix H_(z,i−1) and these successive matrices can each be transmitted as a space-time block as described above.

The space-time blocks transmitted from the antennas 16 and 18 as described above with reference to FIG. 4 result in the receiver receiving symbols y₁, y₂, . . . which are paired and represented by Y_(i) as described above. Again representing the channel parameters by the vector A_(i) corresponding to the channel estimates discussed above, the received signal has the form: Y _(i) =H _(z)(z _(1,i) ,z _(2,i))A _(i) =kH _(x)(x _(l,i) ,x _(2,i))H _(z)(z _(l,i−1) ,z _(2,i−1))A _(i). As the last two terms of this equation are approximately the same as the preceding received symbol pair Y_(i−1), it can be seen that: Y _(i) ≅kH _(x)(x _(1,i) ,x _(2,i))Y _(i−1) =kH _(x)(X _(i))Y _(i−1),  (2) this approximation being based on the reasonable assumption that the channel parameters do not change significantly between two consecutive space-time blocks.

It can be-appreciated that this equation (2) has a similar form to that of equation (1) above, except that the channel parameter vector A_(i) of equation (1) is replaced in equation (2) by kY_(i−1). With this replacement, an arrangement for detecting the transmitted information can correspond to that described above with reference to FIG. 2. Thus the decoding process, the task of which is to solve the above equation (2), is in this case given by: $\begin{matrix} {{\hat{X}}_{i} = {\begin{bmatrix} {\hat{x}}_{1,i} \\ {\hat{x}}_{2,i} \end{bmatrix} = {{{H\left( {y_{1,{i - 1}},y_{2,{i - 1}}} \right)}^{\prime}{\overset{\sim}{Y}}_{i}} = {\begin{bmatrix} y_{1,{i - 1}}^{*} & {- y_{2,{i - 1}}} \\ y_{2,{i - 1}}^{*} & y_{1,{i - 1}} \end{bmatrix}\begin{bmatrix} y_{1,i} \\ {- y_{2,i}^{*}} \end{bmatrix}}}}} & (3) \end{matrix}$ where the converted vector ${\overset{\sim}{Y}}_{i} = \begin{bmatrix} y_{1,i} \\ {- y_{2,i}^{*}} \end{bmatrix}$ and the matrix H(y_(1,i−1),y_(2,i−1))′ is the conjugate transpose of the matrix H(y_(1,i−1),y_(2,i−1))

It can be seen from the above equations that with the encoding provided by the transmitter of FIG. 4, the received symbol pair Y_(i) is dependent only upon the normalization factor k which is predetermined and constant, the current space-time block code matrix H_(x)(X_(i)), and the immediately preceding received symbol pair Y_(i−1). The decoding of the received symbol pair Y_(i) to produce the estimated decoded symbol {circumflex over (X)}_(i) is not dependent upon the channel parameter vector A_(i), which is therefore not required to be estimated in order for the receiver to recover the transmitted information. In addition, it can be appreciated that there is differential coding: the estimated decoded symbol {circumflex over (X)}_(i) depends on the current received symbol pair Y_(i) and the immediately preceding received symbol pair Y_(i−1), and error propagation in the decoded information is avoided because the decoding of each received symbol pair Y_(i) is not dependent upon previously decoded information.

FIG. 5 illustrates parts of a corresponding receiver in which, as in the known receiver of FIG. 2, the space-time blocks transmitted from the antennas 16 and 18 of the transmitter of FIG. 4 are received by the antenna 20 to produce received symbols y₁, y₂, . . . on the receive path 22. From pairs of these received symbols, y_(1,i) and y_(2,i), or Y_(i), the converted vector ${\overset{\sim}{Y}}_{i} = \begin{bmatrix} y_{1,i} \\ {- y_{2,i}^{*}} \end{bmatrix}$ is produced by a unit 50 and, via a delay unit 52, the matrix ${H\left( {y_{1,{i - 1}},y_{2,{i - 1}}} \right)}^{\prime} = \begin{bmatrix} y_{1,{i - 1}}^{*} & {- y_{2,{i - 1}}} \\ y_{2,{i - 1}}^{*} & y_{1,{i - 1}} \end{bmatrix}$ is produced by a unit 54. In a decoder 56, shown within a dashed line box in FIG. 5, the outputs of the units 50 and 54 are supplied to a multiplier 58 which performs the multiplication of Equation (3) above, thereby producing the estimates {circumflex over (x)}₁, {circumflex over (x)}₂, . . . of the transmitted PSK symbols. x₁, x₂, . . . respectively. As in the receiver of FIG. 2, these estimates are supplied to the M-PSK demodulator 28, which produces estimates of the original input bits. It can be appreciated that the decoder 56 does not use the channel parameter vector A_(i), so that it does not require and is not dependent upon channel estimation, and that the decoder produces the estimates of the transmitted PSK symbols from two consecutively received signal blocks, so that there is no error propagation.

Although the transmitter of FIG. 4 and the receiver of FIG. 5 are described above in the context of the transmitter having two antennas and the receiver having one antenna, it can be appreciated that embodiments of the invention are not limited to this case. The receiver may instead have two or more antennas signals from which are combined in a desired and appropriate manner, for example using maximal ratio combining. In addition, the transmitter may have more than two antennas, the STBC matrix H_(x)(X_(i)) still being a T by T orthogonal matrix where T is the number of transmit antennas. By way of example, the following description relates to the case of T=4, i.e. the transmitter has four antennas and the STBC matrix H_(x)(X_(i)) is required to be a 4 by 4 orthogonal matrix.

As no STBC 4 by 4 orthogonal matrix has been determined for a code rate of 1 (i.e. with 4 sequential M-PSK symbols x₁, x₂, x₃, and X₄ incorporated into the matrix), a lower coding rate can be used. For example, with a ¾ code rate the 4 by 4 orthogonal matrix is derived from only 3 sequential M-PSK symbols x₁, x₂, and X₃. The STBC matrix H_(x)(X_(i)) can then be, for example, the matrix: ${H_{x}\left( {x_{1},x_{2},x_{3}} \right)} = \begin{bmatrix} x_{1} & x_{2} & \frac{x_{3}}{\sqrt{2}} & \frac{x_{3}}{\sqrt{2}} \\ {- x_{2}^{*}} & x_{1}^{*} & \frac{x_{3}}{\sqrt{2}} & \frac{x_{3}}{\sqrt{2}} \\ \frac{x_{3}^{*}}{\sqrt{2}} & \frac{x_{3}^{*}}{\sqrt{2}} & \frac{\left( {{- x_{1}} - x_{1}^{*} + x_{2} - x_{2}^{*}} \right)}{2} & \frac{\left( {x_{1} - x_{1}^{*} - x_{2} - x_{2}^{*}} \right)}{2} \\ \frac{x_{3}^{*}}{2} & \frac{x_{3}^{*}}{\sqrt{2}} & \frac{\left( {x_{1} - x_{1}^{*} + x_{2} + x_{2}^{*}} \right)}{2} & \frac{\left( {{- x_{2}} - x_{1}^{*} - x_{2} + x_{2}^{*}} \right)}{2} \end{bmatrix}$ which is orthogonal, i.e.: H _(x)(X ₁)′H _(x)(X _(l))=(|x ₁|² +|x ₂|² +|x ₃|²)I where I is the identity matrix. The normalization factor k for this matrix is 1/{square root}{square root over (3)}.

Except for the provision of four transmit antennas instead of two, modification of the STBC coder 40 in accordance with the 4 by 4 matrix as described above, and corresponding increases in the numbers of inputs and outputs of the units 40 to 44, the transmitter for this example can be the same as described above with reference to FIG. 4.

In the corresponding receiver, the task of the decoder is again to solve the equation: Y _(i) ≅kH _(x)(X _(i))Y _(i−1) corresponding to equation (2) above, where in this case each of the vectors Y_(i) and Y_(i−1) has four elements and the matrix H_(x)(X_(i)) is a four by four matrix, so that this equation represents a set of four linear simultaneous equations. The receiver can have a generally similar form to that described above with reference to FIG. 5, except that the units 50 and 54 and the multiplier 58 are replaced by units for providing an explicit solution to this decoder equation. It can be seen that the size of the set of linear simultaneous equations represented by this decoder equation corresponds to the number T of transmit antennas and the corresponding size of the space-time block, and that an explicit solution to this equation can always be found regardless of the number T of transmit antennas.

By way of further explanation and example, the 4 by 4 orthogonal matrix STBC arrangement described above may be used with QPSK (i.e. M=4) modulation and Gray coding, the QPSK symbols being represented in the form: x _(m)=(θ_(m,r)+θ_(m,j))/{square root}{square root over (2)} where m=1, 2, 3 and θ_(r) and θ_(j) denote real and imaginary phase components of respective symbols. Consequently, the STBC matrix H_(x)(x₁,x₂,x₃) can be described in the form: H _(x)(x ₁ , x ₂ ,x ₃)=(M _(1,r)θ_(1,r) +M _(1,j) +M _(2,r)θ_(2,r) +M _(2,j)θ_(2,j) +M _(3,r)θ_(3,r) +M _(3,j)θ_(3,j))/{square root}{square root over (2)} where: ${M_{1,r} = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & {- 1} & 0 \\ 0 & 0 & 0 & {- 1} \end{bmatrix}},\quad{M_{1,j} = \begin{bmatrix} j & 0 & 0 & 0 \\ 0 & {- j} & 0 & 0 \\ 0 & 0 & 0 & j \\ 0 & 0 & j & 0 \end{bmatrix}},\quad{M_{2,r} = \begin{bmatrix} 0 & 1 & 0 & 0 \\ {- 1} & 0 & 0 & 0 \\ 0 & 0 & 0 & {- 1} \\ 0 & 0 & 1 & 0 \end{bmatrix}},\quad{M_{2,j} = \begin{bmatrix} 0 & j & 0 & 0 \\ j & 0 & 0 & 0 \\ 0 & 0 & j & 0 \\ 0 & 0 & 0 & {- j} \end{bmatrix}},\quad{M_{3,r} = {\frac{1}{\sqrt{2}}\begin{bmatrix} 0 & 0 & 1 & 1 \\ 0 & 0 & 1 & {- 1} \\ 1 & 1 & 0 & 0 \\ 1 & {- 1} & 0 & 0 \end{bmatrix}}},\quad{M_{3,j} = {{\frac{1}{\sqrt{2}}\begin{bmatrix} 0 & 0 & j & j \\ 0 & 0 & j & {- j} \\ {- j} & {- j} & 0 & 0 \\ {- j} & j & 0 & 0 \end{bmatrix}}.}}$ The corresponding decoding algorithm is described by the equations: θ_(m,r)=sign(real(Y _(i) ′M _(m,r) Y _(i−1)))θ_(m,j)=sign(real(Y _(i) ′M _(m,j) Y _(i−1))) m=1,2,3

Simulations of transmitter and receiver arrangements in accordance with embodiments of the invention for example as described above have shown that these provide a desired performance in terms of bit error rate (BER) and frame error rate (FER), these being 3 dB below those of a space-time block coding arrangement with perfect channel estimation. It can be appreciated that the latter is a theoretical ideal which can not be realized, that in practice channel estimation errors occur which can cause large performance degradation to known STBC systems, and that also in such systems a significant part of the resources are required for the pilot channel or symbols used for synchronization and channel estimation. Accordingly, it is possible for arrangements in accordance with the invention to provide a better BER performance than practical STBC systems using channel estimation, as well as providing a solution which can be easily implemented in the transmitter and the receiver and which is applicable to transmitters with different numbers of transmit antennas.

It can also be appreciated that the performance of a system incorporating an arrangement in accordance with the invention can be further improved by concatenating differential STBC coding described above with a channel encoder, which may for example comprise a turbo coder of known form. For example in this case in the transmitter the input bits supplied serially to the S—P converter 10 or in parallel to the input of the M-PSK mapping function 12 may be derived, for example via a block interleaver of known form, from the output of a turbo coder also of known form. In the receiver, correspondingly the estimated bits output from the decoder 56 can comprise soft values (probabilities or probability ratios) which are supplied, for example via a block de-interleaver of known form, to a channel decoder also of known form. Concatenation of turbo and STBC coding is known for example from G. Bauch, “Concatenation of Space-Time Block Codes and “Turbo”-TCM”, Proceedings of the International Conference on Communications, ICC'99, pages 1202-1206, June 1999.

Although particular embodiments of the invention are described in detail above, it can be appreciated that these and numerous other modifications, variations, and adaptations may be made within the scope of the invention as defined in the claims. 

1. A method of differential space-time block coding comprising the steps of: producing, from symbols to be encoded, successive space-time blocks H_(x)(X_(i)) each of T symbols in successive symbol intervals on each of T paths in accordance with a T by T orthogonal matrix H_(x), where T is an integer greater than one, X_(i) represents the symbols to be encoded in a space-time block, and i is an integer identifying each space-time block; producing differentially encoded space-time output blocks H_(z,i) each of T symbols in successive symbol intervals on each of T output paths; and delaying the differentially encoded space-time output blocks H_(z,i) to produce respective delayed blocks H_(z,i−1); each differentially encoded space-time output block H_(z,i) being produced by matrix multiplication of the block H_(x)(X_(i)) by the delayed block H_(z,i−1).
 2. A method as claimed in claim 1 wherein T=2 and two symbols are encoded in each space-time block.
 3. A method as claimed in claim 1 wherein T=4 and three symbols are encoded in each space-time block.
 4. A method as claimed in any of claims 1 to 3 wherein the step of producing the successive space-time blocks H_(x)(X_(i)) comprises a multiplication of the symbols to be encoded by a normalization factor.
 5. A method as claimed in any of claims 1 to 4 wherein the symbols to be encoded comprise M-ary phase shift keying symbols, where M is an integer greater than one.
 6. A differential space-time block coder comprising: a space-time block coder responsive to symbols to be encoded to produce successive space-time coded blocks; a matrix multiplier having a first input for said successive space-time coded blocks, a second input, and an output providing differentially encoded space-time blocks; and a delay unit for supplying each differentially encoded space-time block from the output of the matrix multiplier to the second input of the matrix multiplier with a delay of one space-time block; the matrix multiplier multiplying each space-time coded block by an immediately preceding differentially encoded space-time block to produce a current differentially encoded space-time block.
 7. A coder as claimed in claim 6 wherein the space-time block coder is arranged to produce each space-time coded block with two symbols in successive symbol intervals on each of two paths, in response to two symbols to be encoded.
 8. A coder as claimed in claim 6 wherein the space-time block coder is arranged to produce each space-time coded block with four symbols in successive symbol intervals on each of four paths, in response to three symbols to be encoded.
 9. A coder as claimed in any of claims 6 to 8 wherein the space-time block coder is arranged to multiply the symbols to be encoded by a normalization factor.
 10. A coder as claimed in any of claims 6 to 9 and further comprising an M-ary phase shift keying function, where M is an integer greater than one, arranged to produce the symbols to be encoded.
 11. A method of decoding symbols received in respective symbol intervals in response to transmission from T antennas of differentially encoded space-time blocks produced by the method of claim 1, comprising the steps of: providing T received symbols of each encoded space-time block; and producing decoded symbols {circumflex over (X)}_(i) in accordance with: Y _(i) =kH _(x)({circumflex over (X)} _(i))Y _(i−1) where Y_(i) is a vector of T symbols of a current encoded space-time block i, Y_(i−1) is a vector of T symbols of an immediately preceding encoded space-time block i−1, i is an integer, k is a scaling constant, and H, is the T by T orthogonal space-time block coding matrix.
 12. A method as claimed in claim 11 wherein T=2, y_(1,i) and y_(2,i) are received symbols of the encoded space-time block i, and the step of producing the decoded symbols {circumflex over (X)}_(k) comprises multiplying a matrix ${H\left( {y_{1,{i - 1}},y_{2,{i - 1}}} \right)}^{\prime} = \begin{bmatrix} y_{1,{i - 1}}^{*} & {- y_{2,{i - 1}}} \\ y_{2,{i - 1}}^{*} & y_{1,{i - 1}} \end{bmatrix}$ by a vector ${\overset{\sim}{Y}}_{i} = {\begin{bmatrix} y_{1,i} \\ {- y_{2,i}^{*}} \end{bmatrix}.}$
 13. A decoder for decoding symbols received in respective symbol intervals in response to transmission of differentially encoded space-time blocks produced by the coder of claim 6, comprising: means for providing received symbols of each encoded space-time block i represented by a vector Y_(i); a delay unit for providing a delay of one space-time block to provide received symbols of an immediately preceding encoded space-time block i−1 represented by a vector Y_(i−1); and means for producing decoded symbols {circumflex over (X)}_(i) in accordance with an equation: Y _(i) =kH _(x)({circumflex over (X)} _(i))Y _(i−1) where k is a scaling constant and H_(x) is an orthogonal matrix representing space-time block coding by the coder.
 14. A decoder as claimed in claim 13 wherein the means for producing the decoded symbols {circumflex over (X)}_(i) comprises a multiplier arranged to multiply a matrix $\begin{bmatrix} y_{1,{i - 1}}^{*} & {- y_{2,{i - 1}}} \\ y_{2,{i - 1}}^{*} & y_{1,{i - 1}} \end{bmatrix}$ by a vector $\begin{bmatrix} y_{1,i} \\ {- y_{2,i}^{*}} \end{bmatrix},$ where y_(1,i) and y_(2,i) are the received symbols of the encoded space-time block i. 